In a conventional data center network infrastructure, there are multiple networks such as an Ethernet network for local area network (LAN) traffic, Fibre Channel (FC) network for storage traffic, and Infiniband network for inter-process communication (IPC) traffic. Fabric virtualization is a concept in which these multiple networks (e.g., LAN, storage area network (SAN) and IPC) with different characteristics are converged into a single network (e.g., a converged Ethernet). The converged network is divided into logical partitions and each partition retains the original characteristics of its native network. The physical link connecting to the converged fabric is partitioned into logical links (a.k.a. virtual links) and the virtual links are used to connect to the logical networks in a converged fabric.
In a conventional host computer system (or server), separate host controllers (or adapters) are used to connect to each network that is present. For example, a system may include an Ethernet network interface controller (NIC) for LAN traffic, FC host bus adapter (HBA) for storage traffic, and Infiniband host channel adapter (HCA) for IPC traffic.
In certain interconnect systems such as a Peripheral Component Interconnect (PCI) or PCI Express (PCIe) system in accordance with a given PCI specification, support is provided for a multi-function device (MFD) such as a controller that can perform multiple functions. However, these multiple functions are entirely independent from each other such that each appears to the system (and more particularly to an operating system (OS) or other structure) as separate devices.